namespace MinesweeperGame
{
    /// <summary>
    /// 游戏难度枚举
    /// </summary>
    public enum Difficulty
    {
        /// <summary>
        /// 初级：9×9 网格，10个地雷
        /// </summary>
        Beginner = 0,
        
        /// <summary>
        /// 中级：16×16 网格，40个地雷
        /// </summary>
        Intermediate = 1,
        
        /// <summary>
        /// 高级：16×30 网格，99个地雷
        /// </summary>
        Expert = 2,
        
        /// <summary>
        /// 自定义难度
        /// </summary>
        Custom = 3
    }

    /// <summary>
    /// 游戏状态枚举
    /// </summary>
    public enum GameState
    {
        /// <summary>
        /// 未开始
        /// </summary>
        NotStarted = 0,
        
        /// <summary>
        /// 进行中
        /// </summary>
        Playing = 1,
        
        /// <summary>
        /// 已获胜
        /// </summary>
        Won = 2,
        
        /// <summary>
        /// 已失败
        /// </summary>
        Lost = 3,
        
        /// <summary>
        /// 暂停
        /// </summary>
        Paused = 4
    }

    /// <summary>
    /// 演示速度枚举
    /// </summary>
    public enum DemoSpeed
    {
        /// <summary>
        /// 慢速
        /// </summary>
        Slow = 0,
        
        /// <summary>
        /// 中速
        /// </summary>
        Medium = 1,
        
        /// <summary>
        /// 快速
        /// </summary>
        Fast = 2
    }

    /// <summary>
    /// 操作类型枚举
    /// </summary>
    public enum OperationType
    {
        /// <summary>
        /// 揭开方块
        /// </summary>
        Reveal = 0,
        
        /// <summary>
        /// 标记地雷
        /// </summary>
        Flag = 1,
        
        /// <summary>
        /// 取消标记
        /// </summary>
        Unflag = 2,
        
        /// <summary>
        /// 左右键同时点击（快速展开）
        /// </summary>
        QuickReveal = 3
    }
} 